<%@ page import="com.zgl.youshuda.core.utils.codenode.MksNodeTool" %>
<%@ page import="com.zgl.youshuda.core.utils.OperResult" %>
<%@ page import="com.zgl.youshuda.core.utils.VariablesPool" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>

	
<%--
	//创建人: 任刚
    //创建时间: 2023/12/19
    <descInfo>
        <businessDesc>
           九九乘法表拼接
        </businessDesc>
        <businessType>
            E5568CCB683A43E7A2142D37E07E42FA
        </businessType>
        <processDesc>
            九九乘法表拼接
        </processDesc>
        <inParams>
            <inParam>
                <varType>Integer</varType>
                <varName>multiplier</varName>
                <remark>乘数</remark>
            </inParam>
            <inParam>
                <varType>Integer</varType>
                <varName>multiplicand</varName>
                <remark>被乘数</remark>
            </inParam>
            <inParam>
                <varType>String</varType>
                <varName>oldMultiplicationTable</varName>
                <remark>历史乘法表</remark>
            </inParam>
        </inParams>
       <outParams>
           {
                "msg": "操作成功",
                "code": 200,
                "data": "乘法表",
                "success": true
            }
        </outParams>
    </descInfo>

  注：JSP保存路径的规范（在JSP目录下开始创建）：功能类型/节点标签/xxjsp

  这是一个空的JSP模板文件，拷贝此文件作为初始模板进行编程；
  每个节点在开发时需要将节点实现的功能，节点实现大体逻辑新一下；
  自行在zbase-admin模块下的webapp/WEB-INF/code下创建文件夹；
  在自己创建的文件夹下创建jsp文件,jsp名称规则为节点名称；
  MksNodeTool此工具用于码可视节点开发时，数据操作不需要考虑事务问题，事务统一由平台控制；
  MksNodeTool此工具只能用于码可视节点开发；

    1、running为初始构造函数，JSP启动时会自动调用此函数，此函数模板已经存在
    2、自定义JAVA方法写在<%!   %>里面
    3、所有方法均均在mksNodeTool里面，使用NEW进行初始化使用
    4、数据库使用在mksNodeTool.DB
    5、流程标识获取mksNodeTool.procKey
    6、逻辑节点配置信息获取mksNodeTool.nodeInfo
    7、功能节点参数信息获取mksNodeTool.params
    8、功能节点数据库信息获取mksNodeTool.dbConn
    9、redis工具mksNodeTool.redisUtil
    10、jsp数据返回工具mksNodeTool.responseUtil
    11、用户唯一标识 mksNodeTool.procOperUserName
    12、流程统一执行时间 mksNodeTool.procExecTime
    .........
--%>

<%
    /**
     * 方法入口
     * 平台基础节点初始时需要将事务初始化关闭
     * 即不需要平台控制事务的或者不需要进行数据库操作的再初始化帮助类时，传入的transactional参数为false
     */
    MksNodeTool mksNodeTool = new MksNodeTool(pageContext);
    mksNodeTool.responseUtil.send(running(mksNodeTool));
%>
<%!
    /**
     * 初始化构造函数
     * 1、定义全局变量
     * running为统一的调用方法,方法名禁止修改
     * @return
     */
    private OperResult running(MksNodeTool mksNodeTool) {
        //节点是否异常返回对象
        OperResult result = OperResult.getSuccessInstance();
        try {
            //获取乘数
            Integer multiplier = mksNodeTool.getParamByEn("multiplier");
            //获取被乘数
            Integer multiplicand = mksNodeTool.getParamByEn("multiplicand");
            //拼接乘法表
            String oldMultiplicationTable = mksNodeTool.getParamByEn("oldMultiplicationTable");
            //获取乘积
            Integer product = multiplier * multiplicand;
            //拼接乘法表
            oldMultiplicationTable+= (multiplicand + " * " +  multiplier + " = " + product) + (product >9?"  ":"    ");
            //返回乘法表
            result.setData(OperResult.getSuccessInstance(oldMultiplicationTable, "操作成功"));
            return result;
        } catch (Exception e) {
            e.printStackTrace();
            result.errorResult(e.getMessage());
        } finally {
            return result;
        }
    }

%>